package com.sky.loveshop.service;

import com.github.pagehelper.PageInfo;
import com.sky.loveshop.entity.Product;
import com.sky.loveshop.entity.exception.BizException;
import com.sky.loveshop.entity.qo.ProductQO;
import com.sky.loveshop.entity.vo.ProductVO;

import java.util.List;

/**
 * @author xcy
 * @version V1.0
 * @description
 * @date 2024/8/18 0:05
 */
public interface ProductService {

    List<ProductVO> listProduct(ProductQO productQO);

    PageInfo<ProductVO> listProductPages(ProductQO productQO);

    ProductVO getProductById(Integer id);

    ProductVO getProductByBarCode(String barCode, Integer shopId) throws BizException;

    ProductVO getProductByUpc(String upc) throws BizException;

    List<Product> getProductsByIds(List<Integer> ids);

    Integer addProduct(Product product);

    Integer delProductById(Integer id);

    Integer updateProductById(Product product);

    List<ProductVO> getProductsByUpcList(List<String> upcList);

    List<Integer> getProductIdsByName(String productName);
}
